package com.sunny.fetch.pojo;

import java.util.ArrayList;
import java.util.List;

public class FCbBasicExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public FCbBasicExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andTidIsNull() {
            addCriterion("tid is null");
            return (Criteria) this;
        }

        public Criteria andTidIsNotNull() {
            addCriterion("tid is not null");
            return (Criteria) this;
        }

        public Criteria andTidEqualTo(Long value) {
            addCriterion("tid =", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotEqualTo(Long value) {
            addCriterion("tid <>", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidGreaterThan(Long value) {
            addCriterion("tid >", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidGreaterThanOrEqualTo(Long value) {
            addCriterion("tid >=", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidLessThan(Long value) {
            addCriterion("tid <", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidLessThanOrEqualTo(Long value) {
            addCriterion("tid <=", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidIn(List<Long> values) {
            addCriterion("tid in", values, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotIn(List<Long> values) {
            addCriterion("tid not in", values, "tid");
            return (Criteria) this;
        }

        public Criteria andTidBetween(Long value1, Long value2) {
            addCriterion("tid between", value1, value2, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotBetween(Long value1, Long value2) {
            addCriterion("tid not between", value1, value2, "tid");
            return (Criteria) this;
        }

        public Criteria andTsCodeIsNull() {
            addCriterion("ts_code is null");
            return (Criteria) this;
        }

        public Criteria andTsCodeIsNotNull() {
            addCriterion("ts_code is not null");
            return (Criteria) this;
        }

        public Criteria andTsCodeEqualTo(String value) {
            addCriterion("ts_code =", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotEqualTo(String value) {
            addCriterion("ts_code <>", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeGreaterThan(String value) {
            addCriterion("ts_code >", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeGreaterThanOrEqualTo(String value) {
            addCriterion("ts_code >=", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeLessThan(String value) {
            addCriterion("ts_code <", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeLessThanOrEqualTo(String value) {
            addCriterion("ts_code <=", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeLike(String value) {
            addCriterion("ts_code like", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotLike(String value) {
            addCriterion("ts_code not like", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeIn(List<String> values) {
            addCriterion("ts_code in", values, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotIn(List<String> values) {
            addCriterion("ts_code not in", values, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeBetween(String value1, String value2) {
            addCriterion("ts_code between", value1, value2, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotBetween(String value1, String value2) {
            addCriterion("ts_code not between", value1, value2, "tsCode");
            return (Criteria) this;
        }

        public Criteria andBondFullNameIsNull() {
            addCriterion("bond_full_name is null");
            return (Criteria) this;
        }

        public Criteria andBondFullNameIsNotNull() {
            addCriterion("bond_full_name is not null");
            return (Criteria) this;
        }

        public Criteria andBondFullNameEqualTo(String value) {
            addCriterion("bond_full_name =", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameNotEqualTo(String value) {
            addCriterion("bond_full_name <>", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameGreaterThan(String value) {
            addCriterion("bond_full_name >", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameGreaterThanOrEqualTo(String value) {
            addCriterion("bond_full_name >=", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameLessThan(String value) {
            addCriterion("bond_full_name <", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameLessThanOrEqualTo(String value) {
            addCriterion("bond_full_name <=", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameLike(String value) {
            addCriterion("bond_full_name like", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameNotLike(String value) {
            addCriterion("bond_full_name not like", value, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameIn(List<String> values) {
            addCriterion("bond_full_name in", values, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameNotIn(List<String> values) {
            addCriterion("bond_full_name not in", values, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameBetween(String value1, String value2) {
            addCriterion("bond_full_name between", value1, value2, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondFullNameNotBetween(String value1, String value2) {
            addCriterion("bond_full_name not between", value1, value2, "bondFullName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameIsNull() {
            addCriterion("bond_short_name is null");
            return (Criteria) this;
        }

        public Criteria andBondShortNameIsNotNull() {
            addCriterion("bond_short_name is not null");
            return (Criteria) this;
        }

        public Criteria andBondShortNameEqualTo(String value) {
            addCriterion("bond_short_name =", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameNotEqualTo(String value) {
            addCriterion("bond_short_name <>", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameGreaterThan(String value) {
            addCriterion("bond_short_name >", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameGreaterThanOrEqualTo(String value) {
            addCriterion("bond_short_name >=", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameLessThan(String value) {
            addCriterion("bond_short_name <", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameLessThanOrEqualTo(String value) {
            addCriterion("bond_short_name <=", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameLike(String value) {
            addCriterion("bond_short_name like", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameNotLike(String value) {
            addCriterion("bond_short_name not like", value, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameIn(List<String> values) {
            addCriterion("bond_short_name in", values, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameNotIn(List<String> values) {
            addCriterion("bond_short_name not in", values, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameBetween(String value1, String value2) {
            addCriterion("bond_short_name between", value1, value2, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andBondShortNameNotBetween(String value1, String value2) {
            addCriterion("bond_short_name not between", value1, value2, "bondShortName");
            return (Criteria) this;
        }

        public Criteria andCbCodeIsNull() {
            addCriterion("cb_code is null");
            return (Criteria) this;
        }

        public Criteria andCbCodeIsNotNull() {
            addCriterion("cb_code is not null");
            return (Criteria) this;
        }

        public Criteria andCbCodeEqualTo(String value) {
            addCriterion("cb_code =", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeNotEqualTo(String value) {
            addCriterion("cb_code <>", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeGreaterThan(String value) {
            addCriterion("cb_code >", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeGreaterThanOrEqualTo(String value) {
            addCriterion("cb_code >=", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeLessThan(String value) {
            addCriterion("cb_code <", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeLessThanOrEqualTo(String value) {
            addCriterion("cb_code <=", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeLike(String value) {
            addCriterion("cb_code like", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeNotLike(String value) {
            addCriterion("cb_code not like", value, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeIn(List<String> values) {
            addCriterion("cb_code in", values, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeNotIn(List<String> values) {
            addCriterion("cb_code not in", values, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeBetween(String value1, String value2) {
            addCriterion("cb_code between", value1, value2, "cbCode");
            return (Criteria) this;
        }

        public Criteria andCbCodeNotBetween(String value1, String value2) {
            addCriterion("cb_code not between", value1, value2, "cbCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeIsNull() {
            addCriterion("stk_code is null");
            return (Criteria) this;
        }

        public Criteria andStkCodeIsNotNull() {
            addCriterion("stk_code is not null");
            return (Criteria) this;
        }

        public Criteria andStkCodeEqualTo(String value) {
            addCriterion("stk_code =", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeNotEqualTo(String value) {
            addCriterion("stk_code <>", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeGreaterThan(String value) {
            addCriterion("stk_code >", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeGreaterThanOrEqualTo(String value) {
            addCriterion("stk_code >=", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeLessThan(String value) {
            addCriterion("stk_code <", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeLessThanOrEqualTo(String value) {
            addCriterion("stk_code <=", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeLike(String value) {
            addCriterion("stk_code like", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeNotLike(String value) {
            addCriterion("stk_code not like", value, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeIn(List<String> values) {
            addCriterion("stk_code in", values, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeNotIn(List<String> values) {
            addCriterion("stk_code not in", values, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeBetween(String value1, String value2) {
            addCriterion("stk_code between", value1, value2, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkCodeNotBetween(String value1, String value2) {
            addCriterion("stk_code not between", value1, value2, "stkCode");
            return (Criteria) this;
        }

        public Criteria andStkShortNameIsNull() {
            addCriterion("stk_short_name is null");
            return (Criteria) this;
        }

        public Criteria andStkShortNameIsNotNull() {
            addCriterion("stk_short_name is not null");
            return (Criteria) this;
        }

        public Criteria andStkShortNameEqualTo(String value) {
            addCriterion("stk_short_name =", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameNotEqualTo(String value) {
            addCriterion("stk_short_name <>", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameGreaterThan(String value) {
            addCriterion("stk_short_name >", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameGreaterThanOrEqualTo(String value) {
            addCriterion("stk_short_name >=", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameLessThan(String value) {
            addCriterion("stk_short_name <", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameLessThanOrEqualTo(String value) {
            addCriterion("stk_short_name <=", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameLike(String value) {
            addCriterion("stk_short_name like", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameNotLike(String value) {
            addCriterion("stk_short_name not like", value, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameIn(List<String> values) {
            addCriterion("stk_short_name in", values, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameNotIn(List<String> values) {
            addCriterion("stk_short_name not in", values, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameBetween(String value1, String value2) {
            addCriterion("stk_short_name between", value1, value2, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andStkShortNameNotBetween(String value1, String value2) {
            addCriterion("stk_short_name not between", value1, value2, "stkShortName");
            return (Criteria) this;
        }

        public Criteria andMaturityIsNull() {
            addCriterion("maturity is null");
            return (Criteria) this;
        }

        public Criteria andMaturityIsNotNull() {
            addCriterion("maturity is not null");
            return (Criteria) this;
        }

        public Criteria andMaturityEqualTo(Float value) {
            addCriterion("maturity =", value, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityNotEqualTo(Float value) {
            addCriterion("maturity <>", value, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityGreaterThan(Float value) {
            addCriterion("maturity >", value, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityGreaterThanOrEqualTo(Float value) {
            addCriterion("maturity >=", value, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityLessThan(Float value) {
            addCriterion("maturity <", value, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityLessThanOrEqualTo(Float value) {
            addCriterion("maturity <=", value, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityIn(List<Float> values) {
            addCriterion("maturity in", values, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityNotIn(List<Float> values) {
            addCriterion("maturity not in", values, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityBetween(Float value1, Float value2) {
            addCriterion("maturity between", value1, value2, "maturity");
            return (Criteria) this;
        }

        public Criteria andMaturityNotBetween(Float value1, Float value2) {
            addCriterion("maturity not between", value1, value2, "maturity");
            return (Criteria) this;
        }

        public Criteria andParIsNull() {
            addCriterion("par is null");
            return (Criteria) this;
        }

        public Criteria andParIsNotNull() {
            addCriterion("par is not null");
            return (Criteria) this;
        }

        public Criteria andParEqualTo(Float value) {
            addCriterion("par =", value, "par");
            return (Criteria) this;
        }

        public Criteria andParNotEqualTo(Float value) {
            addCriterion("par <>", value, "par");
            return (Criteria) this;
        }

        public Criteria andParGreaterThan(Float value) {
            addCriterion("par >", value, "par");
            return (Criteria) this;
        }

        public Criteria andParGreaterThanOrEqualTo(Float value) {
            addCriterion("par >=", value, "par");
            return (Criteria) this;
        }

        public Criteria andParLessThan(Float value) {
            addCriterion("par <", value, "par");
            return (Criteria) this;
        }

        public Criteria andParLessThanOrEqualTo(Float value) {
            addCriterion("par <=", value, "par");
            return (Criteria) this;
        }

        public Criteria andParIn(List<Float> values) {
            addCriterion("par in", values, "par");
            return (Criteria) this;
        }

        public Criteria andParNotIn(List<Float> values) {
            addCriterion("par not in", values, "par");
            return (Criteria) this;
        }

        public Criteria andParBetween(Float value1, Float value2) {
            addCriterion("par between", value1, value2, "par");
            return (Criteria) this;
        }

        public Criteria andParNotBetween(Float value1, Float value2) {
            addCriterion("par not between", value1, value2, "par");
            return (Criteria) this;
        }

        public Criteria andIssuePriceIsNull() {
            addCriterion("issue_price is null");
            return (Criteria) this;
        }

        public Criteria andIssuePriceIsNotNull() {
            addCriterion("issue_price is not null");
            return (Criteria) this;
        }

        public Criteria andIssuePriceEqualTo(Float value) {
            addCriterion("issue_price =", value, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceNotEqualTo(Float value) {
            addCriterion("issue_price <>", value, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceGreaterThan(Float value) {
            addCriterion("issue_price >", value, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceGreaterThanOrEqualTo(Float value) {
            addCriterion("issue_price >=", value, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceLessThan(Float value) {
            addCriterion("issue_price <", value, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceLessThanOrEqualTo(Float value) {
            addCriterion("issue_price <=", value, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceIn(List<Float> values) {
            addCriterion("issue_price in", values, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceNotIn(List<Float> values) {
            addCriterion("issue_price not in", values, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceBetween(Float value1, Float value2) {
            addCriterion("issue_price between", value1, value2, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssuePriceNotBetween(Float value1, Float value2) {
            addCriterion("issue_price not between", value1, value2, "issuePrice");
            return (Criteria) this;
        }

        public Criteria andIssueSizeIsNull() {
            addCriterion("issue_size is null");
            return (Criteria) this;
        }

        public Criteria andIssueSizeIsNotNull() {
            addCriterion("issue_size is not null");
            return (Criteria) this;
        }

        public Criteria andIssueSizeEqualTo(Float value) {
            addCriterion("issue_size =", value, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeNotEqualTo(Float value) {
            addCriterion("issue_size <>", value, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeGreaterThan(Float value) {
            addCriterion("issue_size >", value, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeGreaterThanOrEqualTo(Float value) {
            addCriterion("issue_size >=", value, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeLessThan(Float value) {
            addCriterion("issue_size <", value, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeLessThanOrEqualTo(Float value) {
            addCriterion("issue_size <=", value, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeIn(List<Float> values) {
            addCriterion("issue_size in", values, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeNotIn(List<Float> values) {
            addCriterion("issue_size not in", values, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeBetween(Float value1, Float value2) {
            addCriterion("issue_size between", value1, value2, "issueSize");
            return (Criteria) this;
        }

        public Criteria andIssueSizeNotBetween(Float value1, Float value2) {
            addCriterion("issue_size not between", value1, value2, "issueSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeIsNull() {
            addCriterion("remain_size is null");
            return (Criteria) this;
        }

        public Criteria andRemainSizeIsNotNull() {
            addCriterion("remain_size is not null");
            return (Criteria) this;
        }

        public Criteria andRemainSizeEqualTo(Float value) {
            addCriterion("remain_size =", value, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeNotEqualTo(Float value) {
            addCriterion("remain_size <>", value, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeGreaterThan(Float value) {
            addCriterion("remain_size >", value, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeGreaterThanOrEqualTo(Float value) {
            addCriterion("remain_size >=", value, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeLessThan(Float value) {
            addCriterion("remain_size <", value, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeLessThanOrEqualTo(Float value) {
            addCriterion("remain_size <=", value, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeIn(List<Float> values) {
            addCriterion("remain_size in", values, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeNotIn(List<Float> values) {
            addCriterion("remain_size not in", values, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeBetween(Float value1, Float value2) {
            addCriterion("remain_size between", value1, value2, "remainSize");
            return (Criteria) this;
        }

        public Criteria andRemainSizeNotBetween(Float value1, Float value2) {
            addCriterion("remain_size not between", value1, value2, "remainSize");
            return (Criteria) this;
        }

        public Criteria andValueDateIsNull() {
            addCriterion("value_date is null");
            return (Criteria) this;
        }

        public Criteria andValueDateIsNotNull() {
            addCriterion("value_date is not null");
            return (Criteria) this;
        }

        public Criteria andValueDateEqualTo(String value) {
            addCriterion("value_date =", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateNotEqualTo(String value) {
            addCriterion("value_date <>", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateGreaterThan(String value) {
            addCriterion("value_date >", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateGreaterThanOrEqualTo(String value) {
            addCriterion("value_date >=", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateLessThan(String value) {
            addCriterion("value_date <", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateLessThanOrEqualTo(String value) {
            addCriterion("value_date <=", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateLike(String value) {
            addCriterion("value_date like", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateNotLike(String value) {
            addCriterion("value_date not like", value, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateIn(List<String> values) {
            addCriterion("value_date in", values, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateNotIn(List<String> values) {
            addCriterion("value_date not in", values, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateBetween(String value1, String value2) {
            addCriterion("value_date between", value1, value2, "valueDate");
            return (Criteria) this;
        }

        public Criteria andValueDateNotBetween(String value1, String value2) {
            addCriterion("value_date not between", value1, value2, "valueDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateIsNull() {
            addCriterion("maturity_date is null");
            return (Criteria) this;
        }

        public Criteria andMaturityDateIsNotNull() {
            addCriterion("maturity_date is not null");
            return (Criteria) this;
        }

        public Criteria andMaturityDateEqualTo(String value) {
            addCriterion("maturity_date =", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateNotEqualTo(String value) {
            addCriterion("maturity_date <>", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateGreaterThan(String value) {
            addCriterion("maturity_date >", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateGreaterThanOrEqualTo(String value) {
            addCriterion("maturity_date >=", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateLessThan(String value) {
            addCriterion("maturity_date <", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateLessThanOrEqualTo(String value) {
            addCriterion("maturity_date <=", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateLike(String value) {
            addCriterion("maturity_date like", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateNotLike(String value) {
            addCriterion("maturity_date not like", value, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateIn(List<String> values) {
            addCriterion("maturity_date in", values, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateNotIn(List<String> values) {
            addCriterion("maturity_date not in", values, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateBetween(String value1, String value2) {
            addCriterion("maturity_date between", value1, value2, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andMaturityDateNotBetween(String value1, String value2) {
            addCriterion("maturity_date not between", value1, value2, "maturityDate");
            return (Criteria) this;
        }

        public Criteria andRateTypeIsNull() {
            addCriterion("rate_type is null");
            return (Criteria) this;
        }

        public Criteria andRateTypeIsNotNull() {
            addCriterion("rate_type is not null");
            return (Criteria) this;
        }

        public Criteria andRateTypeEqualTo(String value) {
            addCriterion("rate_type =", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeNotEqualTo(String value) {
            addCriterion("rate_type <>", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeGreaterThan(String value) {
            addCriterion("rate_type >", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeGreaterThanOrEqualTo(String value) {
            addCriterion("rate_type >=", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeLessThan(String value) {
            addCriterion("rate_type <", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeLessThanOrEqualTo(String value) {
            addCriterion("rate_type <=", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeLike(String value) {
            addCriterion("rate_type like", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeNotLike(String value) {
            addCriterion("rate_type not like", value, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeIn(List<String> values) {
            addCriterion("rate_type in", values, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeNotIn(List<String> values) {
            addCriterion("rate_type not in", values, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeBetween(String value1, String value2) {
            addCriterion("rate_type between", value1, value2, "rateType");
            return (Criteria) this;
        }

        public Criteria andRateTypeNotBetween(String value1, String value2) {
            addCriterion("rate_type not between", value1, value2, "rateType");
            return (Criteria) this;
        }

        public Criteria andCouponRateIsNull() {
            addCriterion("coupon_rate is null");
            return (Criteria) this;
        }

        public Criteria andCouponRateIsNotNull() {
            addCriterion("coupon_rate is not null");
            return (Criteria) this;
        }

        public Criteria andCouponRateEqualTo(Float value) {
            addCriterion("coupon_rate =", value, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateNotEqualTo(Float value) {
            addCriterion("coupon_rate <>", value, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateGreaterThan(Float value) {
            addCriterion("coupon_rate >", value, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateGreaterThanOrEqualTo(Float value) {
            addCriterion("coupon_rate >=", value, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateLessThan(Float value) {
            addCriterion("coupon_rate <", value, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateLessThanOrEqualTo(Float value) {
            addCriterion("coupon_rate <=", value, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateIn(List<Float> values) {
            addCriterion("coupon_rate in", values, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateNotIn(List<Float> values) {
            addCriterion("coupon_rate not in", values, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateBetween(Float value1, Float value2) {
            addCriterion("coupon_rate between", value1, value2, "couponRate");
            return (Criteria) this;
        }

        public Criteria andCouponRateNotBetween(Float value1, Float value2) {
            addCriterion("coupon_rate not between", value1, value2, "couponRate");
            return (Criteria) this;
        }

        public Criteria andAddRateIsNull() {
            addCriterion("add_rate is null");
            return (Criteria) this;
        }

        public Criteria andAddRateIsNotNull() {
            addCriterion("add_rate is not null");
            return (Criteria) this;
        }

        public Criteria andAddRateEqualTo(Float value) {
            addCriterion("add_rate =", value, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateNotEqualTo(Float value) {
            addCriterion("add_rate <>", value, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateGreaterThan(Float value) {
            addCriterion("add_rate >", value, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateGreaterThanOrEqualTo(Float value) {
            addCriterion("add_rate >=", value, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateLessThan(Float value) {
            addCriterion("add_rate <", value, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateLessThanOrEqualTo(Float value) {
            addCriterion("add_rate <=", value, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateIn(List<Float> values) {
            addCriterion("add_rate in", values, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateNotIn(List<Float> values) {
            addCriterion("add_rate not in", values, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateBetween(Float value1, Float value2) {
            addCriterion("add_rate between", value1, value2, "addRate");
            return (Criteria) this;
        }

        public Criteria andAddRateNotBetween(Float value1, Float value2) {
            addCriterion("add_rate not between", value1, value2, "addRate");
            return (Criteria) this;
        }

        public Criteria andPayPerYearIsNull() {
            addCriterion("pay_per_year is null");
            return (Criteria) this;
        }

        public Criteria andPayPerYearIsNotNull() {
            addCriterion("pay_per_year is not null");
            return (Criteria) this;
        }

        public Criteria andPayPerYearEqualTo(Integer value) {
            addCriterion("pay_per_year =", value, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearNotEqualTo(Integer value) {
            addCriterion("pay_per_year <>", value, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearGreaterThan(Integer value) {
            addCriterion("pay_per_year >", value, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearGreaterThanOrEqualTo(Integer value) {
            addCriterion("pay_per_year >=", value, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearLessThan(Integer value) {
            addCriterion("pay_per_year <", value, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearLessThanOrEqualTo(Integer value) {
            addCriterion("pay_per_year <=", value, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearIn(List<Integer> values) {
            addCriterion("pay_per_year in", values, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearNotIn(List<Integer> values) {
            addCriterion("pay_per_year not in", values, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearBetween(Integer value1, Integer value2) {
            addCriterion("pay_per_year between", value1, value2, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andPayPerYearNotBetween(Integer value1, Integer value2) {
            addCriterion("pay_per_year not between", value1, value2, "payPerYear");
            return (Criteria) this;
        }

        public Criteria andListDateIsNull() {
            addCriterion("list_date is null");
            return (Criteria) this;
        }

        public Criteria andListDateIsNotNull() {
            addCriterion("list_date is not null");
            return (Criteria) this;
        }

        public Criteria andListDateEqualTo(String value) {
            addCriterion("list_date =", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateNotEqualTo(String value) {
            addCriterion("list_date <>", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateGreaterThan(String value) {
            addCriterion("list_date >", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateGreaterThanOrEqualTo(String value) {
            addCriterion("list_date >=", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateLessThan(String value) {
            addCriterion("list_date <", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateLessThanOrEqualTo(String value) {
            addCriterion("list_date <=", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateLike(String value) {
            addCriterion("list_date like", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateNotLike(String value) {
            addCriterion("list_date not like", value, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateIn(List<String> values) {
            addCriterion("list_date in", values, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateNotIn(List<String> values) {
            addCriterion("list_date not in", values, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateBetween(String value1, String value2) {
            addCriterion("list_date between", value1, value2, "listDate");
            return (Criteria) this;
        }

        public Criteria andListDateNotBetween(String value1, String value2) {
            addCriterion("list_date not between", value1, value2, "listDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateIsNull() {
            addCriterion("delist_date is null");
            return (Criteria) this;
        }

        public Criteria andDelistDateIsNotNull() {
            addCriterion("delist_date is not null");
            return (Criteria) this;
        }

        public Criteria andDelistDateEqualTo(String value) {
            addCriterion("delist_date =", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateNotEqualTo(String value) {
            addCriterion("delist_date <>", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateGreaterThan(String value) {
            addCriterion("delist_date >", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateGreaterThanOrEqualTo(String value) {
            addCriterion("delist_date >=", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateLessThan(String value) {
            addCriterion("delist_date <", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateLessThanOrEqualTo(String value) {
            addCriterion("delist_date <=", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateLike(String value) {
            addCriterion("delist_date like", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateNotLike(String value) {
            addCriterion("delist_date not like", value, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateIn(List<String> values) {
            addCriterion("delist_date in", values, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateNotIn(List<String> values) {
            addCriterion("delist_date not in", values, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateBetween(String value1, String value2) {
            addCriterion("delist_date between", value1, value2, "delistDate");
            return (Criteria) this;
        }

        public Criteria andDelistDateNotBetween(String value1, String value2) {
            addCriterion("delist_date not between", value1, value2, "delistDate");
            return (Criteria) this;
        }

        public Criteria andExchangeIsNull() {
            addCriterion("exchange is null");
            return (Criteria) this;
        }

        public Criteria andExchangeIsNotNull() {
            addCriterion("exchange is not null");
            return (Criteria) this;
        }

        public Criteria andExchangeEqualTo(String value) {
            addCriterion("exchange =", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotEqualTo(String value) {
            addCriterion("exchange <>", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeGreaterThan(String value) {
            addCriterion("exchange >", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeGreaterThanOrEqualTo(String value) {
            addCriterion("exchange >=", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeLessThan(String value) {
            addCriterion("exchange <", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeLessThanOrEqualTo(String value) {
            addCriterion("exchange <=", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeLike(String value) {
            addCriterion("exchange like", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotLike(String value) {
            addCriterion("exchange not like", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeIn(List<String> values) {
            addCriterion("exchange in", values, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotIn(List<String> values) {
            addCriterion("exchange not in", values, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeBetween(String value1, String value2) {
            addCriterion("exchange between", value1, value2, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotBetween(String value1, String value2) {
            addCriterion("exchange not between", value1, value2, "exchange");
            return (Criteria) this;
        }

        public Criteria andConvStartDateIsNull() {
            addCriterion("conv_start_date is null");
            return (Criteria) this;
        }

        public Criteria andConvStartDateIsNotNull() {
            addCriterion("conv_start_date is not null");
            return (Criteria) this;
        }

        public Criteria andConvStartDateEqualTo(String value) {
            addCriterion("conv_start_date =", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateNotEqualTo(String value) {
            addCriterion("conv_start_date <>", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateGreaterThan(String value) {
            addCriterion("conv_start_date >", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateGreaterThanOrEqualTo(String value) {
            addCriterion("conv_start_date >=", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateLessThan(String value) {
            addCriterion("conv_start_date <", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateLessThanOrEqualTo(String value) {
            addCriterion("conv_start_date <=", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateLike(String value) {
            addCriterion("conv_start_date like", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateNotLike(String value) {
            addCriterion("conv_start_date not like", value, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateIn(List<String> values) {
            addCriterion("conv_start_date in", values, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateNotIn(List<String> values) {
            addCriterion("conv_start_date not in", values, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateBetween(String value1, String value2) {
            addCriterion("conv_start_date between", value1, value2, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvStartDateNotBetween(String value1, String value2) {
            addCriterion("conv_start_date not between", value1, value2, "convStartDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateIsNull() {
            addCriterion("conv_end_date is null");
            return (Criteria) this;
        }

        public Criteria andConvEndDateIsNotNull() {
            addCriterion("conv_end_date is not null");
            return (Criteria) this;
        }

        public Criteria andConvEndDateEqualTo(String value) {
            addCriterion("conv_end_date =", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateNotEqualTo(String value) {
            addCriterion("conv_end_date <>", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateGreaterThan(String value) {
            addCriterion("conv_end_date >", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateGreaterThanOrEqualTo(String value) {
            addCriterion("conv_end_date >=", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateLessThan(String value) {
            addCriterion("conv_end_date <", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateLessThanOrEqualTo(String value) {
            addCriterion("conv_end_date <=", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateLike(String value) {
            addCriterion("conv_end_date like", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateNotLike(String value) {
            addCriterion("conv_end_date not like", value, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateIn(List<String> values) {
            addCriterion("conv_end_date in", values, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateNotIn(List<String> values) {
            addCriterion("conv_end_date not in", values, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateBetween(String value1, String value2) {
            addCriterion("conv_end_date between", value1, value2, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andConvEndDateNotBetween(String value1, String value2) {
            addCriterion("conv_end_date not between", value1, value2, "convEndDate");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceIsNull() {
            addCriterion("first_conv_price is null");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceIsNotNull() {
            addCriterion("first_conv_price is not null");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceEqualTo(Float value) {
            addCriterion("first_conv_price =", value, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceNotEqualTo(Float value) {
            addCriterion("first_conv_price <>", value, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceGreaterThan(Float value) {
            addCriterion("first_conv_price >", value, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceGreaterThanOrEqualTo(Float value) {
            addCriterion("first_conv_price >=", value, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceLessThan(Float value) {
            addCriterion("first_conv_price <", value, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceLessThanOrEqualTo(Float value) {
            addCriterion("first_conv_price <=", value, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceIn(List<Float> values) {
            addCriterion("first_conv_price in", values, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceNotIn(List<Float> values) {
            addCriterion("first_conv_price not in", values, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceBetween(Float value1, Float value2) {
            addCriterion("first_conv_price between", value1, value2, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andFirstConvPriceNotBetween(Float value1, Float value2) {
            addCriterion("first_conv_price not between", value1, value2, "firstConvPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceIsNull() {
            addCriterion("conv_price is null");
            return (Criteria) this;
        }

        public Criteria andConvPriceIsNotNull() {
            addCriterion("conv_price is not null");
            return (Criteria) this;
        }

        public Criteria andConvPriceEqualTo(Float value) {
            addCriterion("conv_price =", value, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceNotEqualTo(Float value) {
            addCriterion("conv_price <>", value, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceGreaterThan(Float value) {
            addCriterion("conv_price >", value, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceGreaterThanOrEqualTo(Float value) {
            addCriterion("conv_price >=", value, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceLessThan(Float value) {
            addCriterion("conv_price <", value, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceLessThanOrEqualTo(Float value) {
            addCriterion("conv_price <=", value, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceIn(List<Float> values) {
            addCriterion("conv_price in", values, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceNotIn(List<Float> values) {
            addCriterion("conv_price not in", values, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceBetween(Float value1, Float value2) {
            addCriterion("conv_price between", value1, value2, "convPrice");
            return (Criteria) this;
        }

        public Criteria andConvPriceNotBetween(Float value1, Float value2) {
            addCriterion("conv_price not between", value1, value2, "convPrice");
            return (Criteria) this;
        }

        public Criteria andRateClauseIsNull() {
            addCriterion("rate_clause is null");
            return (Criteria) this;
        }

        public Criteria andRateClauseIsNotNull() {
            addCriterion("rate_clause is not null");
            return (Criteria) this;
        }

        public Criteria andRateClauseEqualTo(String value) {
            addCriterion("rate_clause =", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseNotEqualTo(String value) {
            addCriterion("rate_clause <>", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseGreaterThan(String value) {
            addCriterion("rate_clause >", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseGreaterThanOrEqualTo(String value) {
            addCriterion("rate_clause >=", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseLessThan(String value) {
            addCriterion("rate_clause <", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseLessThanOrEqualTo(String value) {
            addCriterion("rate_clause <=", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseLike(String value) {
            addCriterion("rate_clause like", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseNotLike(String value) {
            addCriterion("rate_clause not like", value, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseIn(List<String> values) {
            addCriterion("rate_clause in", values, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseNotIn(List<String> values) {
            addCriterion("rate_clause not in", values, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseBetween(String value1, String value2) {
            addCriterion("rate_clause between", value1, value2, "rateClause");
            return (Criteria) this;
        }

        public Criteria andRateClauseNotBetween(String value1, String value2) {
            addCriterion("rate_clause not between", value1, value2, "rateClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseIsNull() {
            addCriterion("put_clause is null");
            return (Criteria) this;
        }

        public Criteria andPutClauseIsNotNull() {
            addCriterion("put_clause is not null");
            return (Criteria) this;
        }

        public Criteria andPutClauseEqualTo(String value) {
            addCriterion("put_clause =", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseNotEqualTo(String value) {
            addCriterion("put_clause <>", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseGreaterThan(String value) {
            addCriterion("put_clause >", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseGreaterThanOrEqualTo(String value) {
            addCriterion("put_clause >=", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseLessThan(String value) {
            addCriterion("put_clause <", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseLessThanOrEqualTo(String value) {
            addCriterion("put_clause <=", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseLike(String value) {
            addCriterion("put_clause like", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseNotLike(String value) {
            addCriterion("put_clause not like", value, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseIn(List<String> values) {
            addCriterion("put_clause in", values, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseNotIn(List<String> values) {
            addCriterion("put_clause not in", values, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseBetween(String value1, String value2) {
            addCriterion("put_clause between", value1, value2, "putClause");
            return (Criteria) this;
        }

        public Criteria andPutClauseNotBetween(String value1, String value2) {
            addCriterion("put_clause not between", value1, value2, "putClause");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceIsNull() {
            addCriterion("maturity_put_price is null");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceIsNotNull() {
            addCriterion("maturity_put_price is not null");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceEqualTo(String value) {
            addCriterion("maturity_put_price =", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceNotEqualTo(String value) {
            addCriterion("maturity_put_price <>", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceGreaterThan(String value) {
            addCriterion("maturity_put_price >", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceGreaterThanOrEqualTo(String value) {
            addCriterion("maturity_put_price >=", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceLessThan(String value) {
            addCriterion("maturity_put_price <", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceLessThanOrEqualTo(String value) {
            addCriterion("maturity_put_price <=", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceLike(String value) {
            addCriterion("maturity_put_price like", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceNotLike(String value) {
            addCriterion("maturity_put_price not like", value, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceIn(List<String> values) {
            addCriterion("maturity_put_price in", values, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceNotIn(List<String> values) {
            addCriterion("maturity_put_price not in", values, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceBetween(String value1, String value2) {
            addCriterion("maturity_put_price between", value1, value2, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andMaturityPutPriceNotBetween(String value1, String value2) {
            addCriterion("maturity_put_price not between", value1, value2, "maturityPutPrice");
            return (Criteria) this;
        }

        public Criteria andCallClauseIsNull() {
            addCriterion("call_clause is null");
            return (Criteria) this;
        }

        public Criteria andCallClauseIsNotNull() {
            addCriterion("call_clause is not null");
            return (Criteria) this;
        }

        public Criteria andCallClauseEqualTo(String value) {
            addCriterion("call_clause =", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseNotEqualTo(String value) {
            addCriterion("call_clause <>", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseGreaterThan(String value) {
            addCriterion("call_clause >", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseGreaterThanOrEqualTo(String value) {
            addCriterion("call_clause >=", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseLessThan(String value) {
            addCriterion("call_clause <", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseLessThanOrEqualTo(String value) {
            addCriterion("call_clause <=", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseLike(String value) {
            addCriterion("call_clause like", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseNotLike(String value) {
            addCriterion("call_clause not like", value, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseIn(List<String> values) {
            addCriterion("call_clause in", values, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseNotIn(List<String> values) {
            addCriterion("call_clause not in", values, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseBetween(String value1, String value2) {
            addCriterion("call_clause between", value1, value2, "callClause");
            return (Criteria) this;
        }

        public Criteria andCallClauseNotBetween(String value1, String value2) {
            addCriterion("call_clause not between", value1, value2, "callClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseIsNull() {
            addCriterion("reset_clause is null");
            return (Criteria) this;
        }

        public Criteria andResetClauseIsNotNull() {
            addCriterion("reset_clause is not null");
            return (Criteria) this;
        }

        public Criteria andResetClauseEqualTo(String value) {
            addCriterion("reset_clause =", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseNotEqualTo(String value) {
            addCriterion("reset_clause <>", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseGreaterThan(String value) {
            addCriterion("reset_clause >", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseGreaterThanOrEqualTo(String value) {
            addCriterion("reset_clause >=", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseLessThan(String value) {
            addCriterion("reset_clause <", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseLessThanOrEqualTo(String value) {
            addCriterion("reset_clause <=", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseLike(String value) {
            addCriterion("reset_clause like", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseNotLike(String value) {
            addCriterion("reset_clause not like", value, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseIn(List<String> values) {
            addCriterion("reset_clause in", values, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseNotIn(List<String> values) {
            addCriterion("reset_clause not in", values, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseBetween(String value1, String value2) {
            addCriterion("reset_clause between", value1, value2, "resetClause");
            return (Criteria) this;
        }

        public Criteria andResetClauseNotBetween(String value1, String value2) {
            addCriterion("reset_clause not between", value1, value2, "resetClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseIsNull() {
            addCriterion("conv_clause is null");
            return (Criteria) this;
        }

        public Criteria andConvClauseIsNotNull() {
            addCriterion("conv_clause is not null");
            return (Criteria) this;
        }

        public Criteria andConvClauseEqualTo(String value) {
            addCriterion("conv_clause =", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseNotEqualTo(String value) {
            addCriterion("conv_clause <>", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseGreaterThan(String value) {
            addCriterion("conv_clause >", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseGreaterThanOrEqualTo(String value) {
            addCriterion("conv_clause >=", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseLessThan(String value) {
            addCriterion("conv_clause <", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseLessThanOrEqualTo(String value) {
            addCriterion("conv_clause <=", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseLike(String value) {
            addCriterion("conv_clause like", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseNotLike(String value) {
            addCriterion("conv_clause not like", value, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseIn(List<String> values) {
            addCriterion("conv_clause in", values, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseNotIn(List<String> values) {
            addCriterion("conv_clause not in", values, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseBetween(String value1, String value2) {
            addCriterion("conv_clause between", value1, value2, "convClause");
            return (Criteria) this;
        }

        public Criteria andConvClauseNotBetween(String value1, String value2) {
            addCriterion("conv_clause not between", value1, value2, "convClause");
            return (Criteria) this;
        }

        public Criteria andGuarantorIsNull() {
            addCriterion("guarantor is null");
            return (Criteria) this;
        }

        public Criteria andGuarantorIsNotNull() {
            addCriterion("guarantor is not null");
            return (Criteria) this;
        }

        public Criteria andGuarantorEqualTo(String value) {
            addCriterion("guarantor =", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorNotEqualTo(String value) {
            addCriterion("guarantor <>", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorGreaterThan(String value) {
            addCriterion("guarantor >", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorGreaterThanOrEqualTo(String value) {
            addCriterion("guarantor >=", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorLessThan(String value) {
            addCriterion("guarantor <", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorLessThanOrEqualTo(String value) {
            addCriterion("guarantor <=", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorLike(String value) {
            addCriterion("guarantor like", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorNotLike(String value) {
            addCriterion("guarantor not like", value, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorIn(List<String> values) {
            addCriterion("guarantor in", values, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorNotIn(List<String> values) {
            addCriterion("guarantor not in", values, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorBetween(String value1, String value2) {
            addCriterion("guarantor between", value1, value2, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuarantorNotBetween(String value1, String value2) {
            addCriterion("guarantor not between", value1, value2, "guarantor");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeIsNull() {
            addCriterion("guarantee_type is null");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeIsNotNull() {
            addCriterion("guarantee_type is not null");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeEqualTo(String value) {
            addCriterion("guarantee_type =", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeNotEqualTo(String value) {
            addCriterion("guarantee_type <>", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeGreaterThan(String value) {
            addCriterion("guarantee_type >", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeGreaterThanOrEqualTo(String value) {
            addCriterion("guarantee_type >=", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeLessThan(String value) {
            addCriterion("guarantee_type <", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeLessThanOrEqualTo(String value) {
            addCriterion("guarantee_type <=", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeLike(String value) {
            addCriterion("guarantee_type like", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeNotLike(String value) {
            addCriterion("guarantee_type not like", value, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeIn(List<String> values) {
            addCriterion("guarantee_type in", values, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeNotIn(List<String> values) {
            addCriterion("guarantee_type not in", values, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeBetween(String value1, String value2) {
            addCriterion("guarantee_type between", value1, value2, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andGuaranteeTypeNotBetween(String value1, String value2) {
            addCriterion("guarantee_type not between", value1, value2, "guaranteeType");
            return (Criteria) this;
        }

        public Criteria andIssueRatingIsNull() {
            addCriterion("issue_rating is null");
            return (Criteria) this;
        }

        public Criteria andIssueRatingIsNotNull() {
            addCriterion("issue_rating is not null");
            return (Criteria) this;
        }

        public Criteria andIssueRatingEqualTo(String value) {
            addCriterion("issue_rating =", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingNotEqualTo(String value) {
            addCriterion("issue_rating <>", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingGreaterThan(String value) {
            addCriterion("issue_rating >", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingGreaterThanOrEqualTo(String value) {
            addCriterion("issue_rating >=", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingLessThan(String value) {
            addCriterion("issue_rating <", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingLessThanOrEqualTo(String value) {
            addCriterion("issue_rating <=", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingLike(String value) {
            addCriterion("issue_rating like", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingNotLike(String value) {
            addCriterion("issue_rating not like", value, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingIn(List<String> values) {
            addCriterion("issue_rating in", values, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingNotIn(List<String> values) {
            addCriterion("issue_rating not in", values, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingBetween(String value1, String value2) {
            addCriterion("issue_rating between", value1, value2, "issueRating");
            return (Criteria) this;
        }

        public Criteria andIssueRatingNotBetween(String value1, String value2) {
            addCriterion("issue_rating not between", value1, value2, "issueRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingIsNull() {
            addCriterion("newest_rating is null");
            return (Criteria) this;
        }

        public Criteria andNewestRatingIsNotNull() {
            addCriterion("newest_rating is not null");
            return (Criteria) this;
        }

        public Criteria andNewestRatingEqualTo(String value) {
            addCriterion("newest_rating =", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingNotEqualTo(String value) {
            addCriterion("newest_rating <>", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingGreaterThan(String value) {
            addCriterion("newest_rating >", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingGreaterThanOrEqualTo(String value) {
            addCriterion("newest_rating >=", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingLessThan(String value) {
            addCriterion("newest_rating <", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingLessThanOrEqualTo(String value) {
            addCriterion("newest_rating <=", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingLike(String value) {
            addCriterion("newest_rating like", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingNotLike(String value) {
            addCriterion("newest_rating not like", value, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingIn(List<String> values) {
            addCriterion("newest_rating in", values, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingNotIn(List<String> values) {
            addCriterion("newest_rating not in", values, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingBetween(String value1, String value2) {
            addCriterion("newest_rating between", value1, value2, "newestRating");
            return (Criteria) this;
        }

        public Criteria andNewestRatingNotBetween(String value1, String value2) {
            addCriterion("newest_rating not between", value1, value2, "newestRating");
            return (Criteria) this;
        }

        public Criteria andRatingCompIsNull() {
            addCriterion("rating_comp is null");
            return (Criteria) this;
        }

        public Criteria andRatingCompIsNotNull() {
            addCriterion("rating_comp is not null");
            return (Criteria) this;
        }

        public Criteria andRatingCompEqualTo(String value) {
            addCriterion("rating_comp =", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompNotEqualTo(String value) {
            addCriterion("rating_comp <>", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompGreaterThan(String value) {
            addCriterion("rating_comp >", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompGreaterThanOrEqualTo(String value) {
            addCriterion("rating_comp >=", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompLessThan(String value) {
            addCriterion("rating_comp <", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompLessThanOrEqualTo(String value) {
            addCriterion("rating_comp <=", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompLike(String value) {
            addCriterion("rating_comp like", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompNotLike(String value) {
            addCriterion("rating_comp not like", value, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompIn(List<String> values) {
            addCriterion("rating_comp in", values, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompNotIn(List<String> values) {
            addCriterion("rating_comp not in", values, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompBetween(String value1, String value2) {
            addCriterion("rating_comp between", value1, value2, "ratingComp");
            return (Criteria) this;
        }

        public Criteria andRatingCompNotBetween(String value1, String value2) {
            addCriterion("rating_comp not between", value1, value2, "ratingComp");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}